iT邦幫忙

DAY 11
4

與Python共舞系列 第 11

Python的學習之旅-範例說明

  • 分享至 

  • xImage
  •  

上次我們執行過了第一個範例
但是該範例的內容與作用我都不了解
所以今天就要來了解一下該範例的內容

"""odbchelper.py sample script   
  
This program is part of "Dive Into Python", a free Python book for  
experienced programmers.  Visit http://diveintopython.org/ for the   
latest version.   
  
All this stuff at the top of the script is just optional metadata;   
the real code starts on the "def buildConnectionString" line   
"""  

首先是第一行到第九行是說明這個範例的用途
在Python的語言中"""代表的是註記,就相當於Java中的/* 和 */或是//
因此第一行的"""到第九行的"""就會被當成說明文字或是備註了
另外備註的用法也可以用底下的技巧:

__author__ = "Mark Pilgrim (mark@diveintopython.org)"  
__version__ = "$Revision: 1.2 $"  
__date__ = "$Date: 2004/05/05 21:57:19 $"  
__copyright__ = "Copyright (c) 2001 Mark Pilgrim"  
__license__ = "Python" 

接下來真正會執行的程式部分
這行最主要的作用在於宣告與定義function

def buildConnectionString(params):
"""Build a connection string from a dictionary
	
	Returns string.
	"""
	return ";".join(["%s=%s" & (k, v) for k, v in params.items()])

在這裡定義了一個叫做buildConnectionString的function
並將該function的參數依序傳回
要定義function一定要使用關鍵字def
python的function一定都會返回一個值,且不需要指定返回值的類型
且Python的空直視None而不是Null
程式語言基本上可以分為底下這四類
statically typed(靜態類型):必須事先定義變數的類型,像是Java和C。
dynamically typed(動態類型):不需要事先定義變數的類型,像是Python和VBScript。
strongly typed (強類型):必須進行轉換才能將變數的類型改變,像是Java和Python。
weakly typed(弱類型):不需進行轉換就能將變數的類型改變,像是VBScript。
從這裡就可以看出Python的優缺點,再來我們來看主程式,這裡將"server":"mpilgrim","database":"master","uid":"sa","pwd":"secret"等字串指定給myParams的變數,最後透過buildConnectionString的function秀出myParams的字串內容

if __name__ == "__main__":
	myParams = {"server":"mpilgrim", \
				"database":"master", \
				"uid":"sa", \
				"pwd":"secret"
				}
	print buildConnectionString(myParams)

嗯!分析完成之後!我覺得這個範例好像有用到後面章節的功能
例如:["%s=%s" & (k, v) for k, v in params.items()]是第3章的List功能
所以希望30天過後對於Python真的能有點了解!


上一篇
Python的學習之旅-Dive Into Python的第一個範例
下一篇
Python的學習之旅-wxpython介紹
系列文
與Python共舞30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

2 則留言

0
SunAllen
iT邦研究生 1 級 ‧ 2010-10-08 09:35:26

jackaitw 提到:
希望30天過後對於Python真的能有點了解

jackaitw大大,沒問題! 不了解的話...您可以再寫個300天讚...oh yea毆飛

0
jackaitw
iT邦研究生 1 級 ‧ 2010-10-08 16:40:05

感謝太陽大的支持!
如果連寫300天會不會就變成Python Geek? 暈

我要留言

立即登入留言